﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace Rappelz.GameServer
{
    public class SummonBase
    {
        public enum SummonRate : int
        {
            RateBase = 0,
            RateCommon = 1,
            RateUncommon = 2,
            RateRare = 3,
            RateUnique = 4,
            RateExtra = 99,
        }

        public enum SummonEvolveType : int
        {
            EvolveNormal = 1,
            EvolveGrowth = 2,
            EvolveEvolve = 3,
        }

        // Enum           :   <unnamed-tag>, Type: int
        // Data           :     constant 0x0, Constant, Type: int, CANT_RIDING
        // Data           :     constant 0x1, Constant, Type: int, RIDING_LENT
        // Function       :   public void SummonBase::SummonBase(const struct SummonBase &)
        // Function       :   public void SummonBase()
        // Function       :   public struct SummonBase & SummonBase::operator=(const struct SummonBase &)

        public int uid;         // Data           :   this+0x0, Member, Type: int, uid
        public int type;        // Data           :   this+0x4, Member, Type: int, type
        public int name_id;     // Data           :   this+0x8, Member, Type: int, name_id
        public int card_id;     // Data           :   this+0xC, Member, Type: int, card_id
        public int magic_type;  // Data           :   this+0x10, Member, Type: int, magic_type
        public sbyte rate;       // Data           :   this+0x14, Member, Type: char, rate
        public int stat_id;     // Data           :   this+0x18, Member, Type: int, stat_id
        public float size;      // Data           :   this+0x1C, Member, Type: float, size
        public float scale;     // Data           :   this+0x20, Member, Type: float, scale
        public int riding_speed;// Data           :   this+0x24, Member, Type: int, riding_speed
        public int run_speed;   // Data           :   this+0x28, Member, Type: int, run_speed   
        public sbyte is_riding_only;         // Data           :   this+0x2C, Member, Type: char, is_riding_only
        public int attack_range;            // Data           :   this+0x30, Member, Type: int, attack_range
        public int evolve_type;             // Data           :   this+0x34, Member, Type: int, evolve_type
        public int evolve_target;           // Data           :   this+0x38, Member, Type: int, evolve_target
        public string strScript;            // Data           :   this+0x3C, Member, Type: class std::basic_string<char,std::char_traits<char>,std::allocator<char> >, strScript
 

    }
}
